home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gigantic Games 2
/
Gigantic Games 2.iso
/
pc
/
_k_
/
kinghigh
/
kinghigh.amos
/
kinghigh.amosSourceCode
< prev
next >
Wrap
AMOS Source Code
|
1994-12-23
|
19KB
|
790 lines
Screen Open 0,640,200,16,Hires
Curs Off : Flash Off : Hide
Get Sprite Palette
Cls 0
'
Dim HIGH(6),HIGHNAME$(6),ANS(52),WRDS$(19)
'
Rem ***** All GLOBAL variables listed here *****
'
Global HIGH(),HIGHNAME$(),ANS(),WRDS$(),WRD$,NAME$,N$
Global X,Y,GAM,H,BET,NPCK,WIN,RDN,GMBL,SPEED,ZZ,B,A,RD,NRW,WP,DWN
Global SC$,SCRL$,E1$,E1
Global XN,GAMESTATE,RNTHR,SP,NPCK,SCNT,CNT,LSC,MSC,CRD,CRD2
Global X1,SCORE,PCN,SCPCN,MRSCR
Global FSTRNTHR,RGHT,HL,BG,J,CHRT,FPI
Global BANKX,PLYX,BANKSCORE,PLYSCORE,PLPONCRD,PLPONCRD2
Global PONCRD,PONCRD2,XP,XP2,BANKCRD,PLYRCRD,BUST,ND
'
Proc INITHIGHSCORES
'
SCRL$="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',.-?! "
'
SC$=" --- KINGHIGH Volume 2.0 by LUNDY 1992 --- For details on how to play "
SC$=SC$+"read the documentation supplied on disk. --- CREDITS --- All "
SC$=SC$+"coding and graphics are by LUNDY and music is from the AMOS "
SC$=SC$+"PD Library but I don't know who wrote it. "
SC$=SC$+"All I will say is that this version is harder than previous "
SC$=SC$+"versions as I have coded it in such a way that a new "
SC$=SC$+"pack is chosen every 20000 points and at this point I have added "
SC$=SC$+"a PONTOON type of game - see docs for details. Anyway here's "
SC$=SC$+"a DEMO of the first part of the game --------------------------"
SC$=SC$+"------------------ "
'
Def Scroll 1,100,138 To 540,151,-1,0
'
MSC=0
Paper 3 : Cls
Gr Writing 0 : Ink 1,0
Text 190,100,"Press FIRE when ready to start."
Repeat : Until Fire(1)
Randomize Timer
Cls
Text 190,100,"Please wait - choosing you a pack."
'
Proc CHSECRD
'
XN=1 : GAMESTATE=0 : RNTHR=0 : SP=0 : NPCK=20000 : FPI=0
'
GAMEMAIN:
Do
If GAMESTATE=0
Proc SETUP
Else If GAMESTATE=1
Proc BEGIN
Else If GAMESTATE=2
Proc GAMESETUP2
Else If GAMESTATE=3
Proc BEGIN
Else If GAMESTATE=4
Proc GAMESETUP2
End If : End If : End If : End If : End If
Loop
'
Procedure SETUP
Unpack 6 To 0
SCNT=1 : CNT=0 : LSC=Len(SC$)
If MSC=0 Then Music 1 : MSC=1
Gr Writing 0 : Ink 0,0
'
STEXT:
Wait Vbl
Scroll 1
Inc SCNT
If SCNT>9
SCNT=0 : Add CNT,1,1 To LSC : Proc NCHAR
End If
If Fire(1) Then Fade 3 : Wait 45 : Music Off : GAMESTATE=1 : Pop Proc
If CNT=LSC Then Proc EXIDEMO : Pop Proc
Goto STEXT
End Proc
'
Procedure NCHAR
E$=Mid$(SC$,CNT,1)
Text 525,147,E$
End Proc
'
Procedure EXIDEMO
Fade 3 : Wait 45
X1=198 : Y=48
Unpack 8 To 0 : Double Buffer
Wait 20 : Paste Bob X1,Y,3 : Wait 20 : Proc HG_LW
Wait 20 : Bob 1,21,60,54 : Wait 20 : Bob Off
ZZ=1 : Proc WRTWRD : Wait 20 : Paste Bob X1,Y,52 : Wait 20
ZZ=3 : Proc WRTWRD : Wait 20 : Proc HG_LW : Wait 20 : Bob 1,111,60,54
Wait 20 : Bob Off : ZZ=2 : Proc WRTWRD : Wait 20 : Paste Bob X1,Y,23 : Wait 20
ZZ=3 : Proc WRTWRD : Wait 20 : Proc HG_LW : Wait 20 : Bob 1,111,60,54 : Wait 20
Bob Off : ZZ=2 : Proc WRTWRD : Wait 20 : Paste Bob X1,Y,27 : Wait 20 : ZZ=3 : Proc WRTWRD : Wait 20
Proc HG_LW : Wait 20 : Bob 1,21,60,54 : Wait 20 : Bob Off : Wait 20 : ZZ=1 : Proc WRTWRD
Wait 20 : Paste Bob X1,Y,50 : Wait 20 : ZZ=3 : Proc WRTWRD : Wait 20
ZZ=6 : Proc WRTWRD : Wait 20 : Bob 1,47,113,55 : Wait 20 : Bob Off : Wait 20
For F=1 To 10
Bob 1,205,113,55 : Wait 5
Bob 1,265,113,55 : Wait 5
Next F
Wait 80 : Fade 3 : Wait 45
End Proc
'
Procedure HG_LW
Add X1,50
ZZ=0 : Proc WRTWRD
End Proc
'
Rem ***** The first and third parts of the game *****
Procedure BEGIN
If RNTHR=0 Then SCORE=50
PCN=54 : SP=1 : SCPCN=0 : MSC=1
'
GAMESETUP:
If RNTHR>0 Then MRSCR=SCORE+200
If RNTHR=0 Then MRSCR=SCORE+150 : Inc RNTHR
H=21 : BET=47
Unpack 8 To 0 : Double Buffer
If GAMESTATE=3 Then Paste Bob 272,15,56
If SCORE>=NPCK Then Proc NWPCK
If GAMESTATE=3 Then ZZ=9 : Proc WRTWRD
Sam Play 1,1,10000 : Wait 100
Paper 3 : Pen 0
Locate 69,6 : Print MRSCR
'
GAMESTART:
Do
If SCPCN=1 Then SCPCN=0 : Pop Proc
If SCORE>=MRSCR and GAMESTATE=1
Fade 3 : Wait 45 : GAMESTATE=2 : Pop Proc
Else If SCORE>=MRSCR and GAMESTATE=3
Fade 3 : Wait 45 : GAMESTATE=4 : Pop Proc
End If : End If
X=198 : Y=48 : WIN=10 : GAM=205 : RDN=0
GMBL=0 : SPEED=1000
Locate 69,8 : Print SCORE;" "
Cls 3,0,0 To 10,10
Cls 10,566,85 To 581,96
Paste Icon 567,86,PCN
Proc PLC_CRD1
Proc HGH_LW
If GAMESTATE=1
Proc PLC_CRD2
Else If GAMESTATE=3
Proc RV_CRD2
End If : End If
Loop
End Proc
'
Procedure PLC_CRD1
Paste Bob X,Y,ANS(XN) : Sam Play 1,6,10000
Proc RANDOM
CRD2=CRD
Wait 30
End Proc
'
Procedure PLC_CRD2
Do
Paste Bob X,Y,ANS(XN) : Sam Play 1,6,10000 : Wait 40
Proc RANDOM
If CRD=CRD2
ZZ=3 : Proc WRTWRD
Else If CRD>CRD2 and HL=1
ZZ=3 : Proc WRTWRD
Else If CRD<CRD2 and HL=1
ZZ=4 : Proc WRTWRD : WIN=-10 : Dec XN : Inc PCN : Proc NW_GAME : Pop Proc
Else If CRD>CRD2 and HL=2
ZZ=4 : Proc WRTWRD : WIN=-10 : Dec XN : Inc PCN : Proc NW_GAME : Pop Proc
Else If CRD<CRD2 and HL=2
ZZ=3 : Proc WRTWRD
End If : End If : End If : End If : End If
Proc ICRD
If SCPCN=1 Then SCPCN=0 : Pop Proc
Loop
End Proc
'
Procedure RV_CRD2
Do
Paste Bob X,Y,ANS(XN) : Sam Play 1,6,10000 : Wait 40
Proc RANDOM
If CRD=CRD2
ZZ=3 : Proc WRTWRD
Else If CRD<CRD2 and HL=1
ZZ=3 : Proc WRTWRD
Else If CRD>CRD2 and HL=1
ZZ=4 : Proc WRTWRD : WIN=-10 : Dec XN : Inc PCN : Proc NW_GAME : Pop Proc
Else If CRD<CRD2 and HL=2
ZZ=4 : Proc WRTWRD : WIN=-10 : Dec XN : Inc PCN : Proc NW_GAME : Pop Proc
Else If CRD>CRD2 and HL=2
ZZ=3 : Proc WRTWRD
End If : End If : End If : End If : End If
Proc ICRD
If SCPCN=1 Then SCPCN=0 : Pop Proc
Loop
End Proc
'
Rem ***** The Second and fourth parts of the game *****
'
Procedure GAMESETUP2
Unpack 10 To 0 : Double Buffer
H=21 : FSTRNTHR=62
If GAMESTATE=4 Then Paste Bob 272,15,56
Paper 3 : Pen 0
Locate 69,8 : Print SCORE;" "
Cls 3,0,0 To 10,90
'
GAMESTART2:
Do
If SCPCN=1 Then SCPCN=0 : Pop Proc
RGHT=100 : NRW=0 : X=200 : Y=47
Cls 10,455,96 To 635,109
Proc FSTCRD1
Proc PCK_WHCH
If GAMESTATE=2
Proc FSTCRD2
Else If GAMESTATE=4
Proc RV_FSTCRD2
End If : End If
Loop
End Proc
'
Procedure FSTCRD1
Wait 50 : Paste Bob X,Y,ANS(XN) : Sam Play 1,6,10000
Proc RANDOM
Wait 10 : CRD2=CRD : Add X,50
End Proc
'
Procedure FSTCRD2
Do
If SCPCN=1 Then SCPCN=0 : Pop Proc
Paste Bob X,Y,ANS(XN) : Sam Play 1,6,10000
Proc RANDOM
If CRD<CRD2 and HL=1
RGHT=0 : Proc ZILCH : Pop Proc
Else If CRD>CRD2 and HL=2
RGHT=0 : Proc ZILCH : Pop Proc
End If : End If
Proc RGHT_CRD
If NRW=14 Then Pop Proc
Proc PCK_WHCH
If SCPCN=1 Then Pop Proc
Loop
End Proc
'
Procedure RV_FSTCRD2
Do
Paste Bob X,Y,ANS(XN) : Sam Play 1,6,10000
Proc RANDOM
If CRD>CRD2 and HL=1
RGHT=0 : Proc ZILCH : Pop Proc
Else If CRD<CRD2 and HL=2
RGHT=0 : Proc ZILCH : Pop Proc
End If : End If
Proc RGHT_CRD
If NRW=14 Then Pop Proc
Proc PCK_WHCH
Loop
End Proc
'
Rem ***** The Pontoon section of the game *****
Rem ***** Called from the nwpck procedure *****
Rem ***** ------------------------------- *****
Rem
Procedure GAMESETUP3
Shared GS
BANKX=50 : PLYX=350 : FSTRNTHR=62 : BUST=0
BANKCRD=2 : PLYRCRD=2 : ND=0 : GS=5
Unpack 7 To 0 : Double Buffer
Paper 3 : Pen 0
Locate 40,19 : Print SCORE;" "
Repeat
Proc RANDOM : Wait 30
Proc FRSTPCRD : Wait 30
Proc RANDOM
Proc PLYRPONCRD : Wait 30
Proc PLYRPLY : Wait 50
Proc BANKPLY : Wait 30
Proc PONRESULTS : Wait 30
Proc FINITO
Until ND=1
Fade 3 : Wait 45
End Proc
'
Procedure FRSTPCRD
Paste Bob BANKX,64,53 : Sam Play 1,6,10000 : Wait 10
PONCRD=CRD : XP=ANS(XN-1)
If PONCRD>10 Then PONCRD=10
Proc RANDOM
Add BANKX,50
Paste Bob BANKX,64,53 : Sam Play 1,6,10000 : Wait 10
PONCRD2=CRD : XP2=ANS(XN-1)
If PONCRD2>10 Then PONCRD2=10
BANKSCORE=BANKSCORE+PONCRD
BANKSCORE=BANKSCORE+PONCRD2
End Proc
'
Procedure PLYRPONCRD
Paste Bob PLYX,64,ANS(XN-1) : Sam Play 1,6,10000 : Wait 10
PLPONCRD=CRD
If PLPONCRD>10 Then PLPONCRD=10
Add PLYX,50
Proc RANDOM
PLPONCRD2=CRD
If PLPONCRD2>10 Then PLPONCRD2=10
Paste Bob PLYX,64,ANS(XN-1) : Sam Play 1,6,10000 : Wait 10
PLYSCORE=PLYSCORE+PLPONCRD
PLYSCORE=PLYSCORE+PLPONCRD2
Locate 70,14 : Print PLYSCORE
End Proc
'
Procedure PLYRPLY
ZZ=11 : FPI=2 : Proc WRTWRD
HL=0
Do
If Jleft(1) Then HL=1 : Bob 1,419,131,54
If HL=1 and Fire(1) Then Bob Off 1 : Proc PLYTWIST
If Jright(1) Then HL=2 : Bob 1,509,131,54
If HL=2 and Fire(1) Then Bob Off 1 : ZZ=13 : FPI=2 : Proc WRTWRD : Pop Proc
If BUST=1 Then ZZ=17 : FPI=2 : Proc WRTWRD : Pop Proc
If PLYRCRD=5 Then Pop Proc
Loop
End Proc
'
Procedure BANKPLY
ZZ=14 : FPI=2 : Proc WRTWRD
Wait 30
BANKX=50
Paste Bob BANKX,64,XP : Add BANKX,50 : Sam Play 1,6,10000 : Wait 20
Paste Bob BANKX,64,XP2 : Sam Play 1,6,10000 : Wait 20
Locate 35,14 : Print BANKSCORE
If BUST=1 Then Bob 1,184,131,54 : ZZ=13 : FPI=2 : Proc WRTWRD : Wait 30 : Bob Off 1 : Pop Proc
Do
If BUST=2
Wait 20 : Bob Off 1 : ZZ=17 : FPI=2 : Proc WRTWRD : Pop Proc
Else If BANKCRD=5
Bob Off 1 : Pop Proc
Else If BANKSCORE<=15
Bob 1,94,131,54 : Proc BANKTWST : Bob Off 1 : Wait 30
Else If BANKSCORE>15
Bob 1,184,131,54 : ZZ=13 : FPI=2 : Proc WRTWRD : Wait 30 : Bob Off 1 : Pop Proc
End If : End If : End If : End If
Loop
End Proc
'
Rem ***** The various procedures for the pontoon section *****
Rem ***** Called by the playing routines/procedures
'
Procedure PLYTWIST
ZZ=12 : FPI=2 : Proc WRTWRD
Add PLYX,50
Proc RANDOM
Paste Bob PLYX,64,ANS(XN-1)
Sam Play 1,6,10000 : Wait 10
If CRD>10 Then CRD=10
Inc PLYRCRD : PLPONCRD2=CRD
If PLPONCRD2>10 Then PLPONCRD2=10
Add PLYSCORE,PLPONCRD2
Locate 70,14 : Print PLYSCORE
If PLYSCORE>21 Then BUST=1 : Pop Proc
If PLYRCRD=5 Then ZZ=18 : FPI=2 : Proc WRTWRD : Wait 30 : Pop Proc
Wait 20 : ZZ=11 : FPI=2 : Proc WRTWRD
End Proc
'
Procedure BANKTWST
ZZ=12 : FPI=2 : Proc WRTWRD
Wait 30 : Add BANKX,50
Proc RANDOM
Paste Bob BANKX,64,ANS(XN-1)
Sam Play 1,6,10000 : Wait 10
Inc BANKCRD
If CRD>10 Then CRD=10
PONCRD=CRD : Add BANKSCORE,PONCRD
Locate 35,14 : Print BANKSCORE
If BANKSCORE>21 Then BUST=2 : Pop Proc
Bob Off 1
If BANKCRD=5 Then ZZ=18 : FPI=2 : Proc WRTWRD : Wait 30 : Pop Proc
ZZ=14 : FPI=2 : Proc WRTWRD
Wait 10
End Proc
'
Rem ***** The results section *****
Procedure PONRESULTS
Repeat
If BUST=1
Proc BANKWINS
Else If BUST=2
Proc PLYRWINS
Else If BANKCRD=5
Proc BANKWINS
Else If PLYRCRD=5
Proc PLYRWINS
Else If BANKSCORE>=PLYSCORE and BUST<2
Proc BANKWINS
Else If PLYSCORE>BANKSCORE and BUST<>1
Proc PLYRWINS
End If : End If : End If : End If : End If : End If
Until ND=1
ND=0
End Proc
'
Procedure BANKWINS
ZZ=15 : FPI=2 : Proc WRTWRD
Wait 30 : ND=1
End Proc
'
Procedure PLYRWINS
ZZ=16 : FPI=2 : Proc WRTWRD
Add SCORE,1000
Locate 40,19 : Print SCORE
Wait 30 : ND=1
End Proc
'
Rem ***** Procedure to straighten everything up again *****
Procedure FINITO
Shared GS
Cls 10,308,36 To 339,48
Paste Icon 318,37,FSTRNTHR
Dec FSTRNTHR
BANKX=50 : PLYX=350 : BUST=0
BANKCRD=2 : PLYRCRD=2
BANKSCORE=0 : PLYSCORE=0 : ND=0
Locate 35,14 : Print " "
Locate 70,14 : Print " "
Cls 3,44,60 To 300,106
Cls 3,345,60 To 608,106
If FSTRNTHR=52 Then ND=1 : GS=1
Wait 30
Cls 10,130,178 To 508,191
End Proc
'
'
Rem ***** The Sub routines for the first and third parts
'
Procedure ICRD
Wait 10 : Inc RDN : CRD2=CRD
Proc HGH_LW
End Proc
'
Procedure RANDOM
Shared GS
PNT:
If ANS(XN)>39
CRD=ANS(XN)-39
Else If ANS(XN)>26 and ANS(XN)<40
CRD=ANS(XN)-26
Else If ANS(XN)>13 and ANS(XN)<27
CRD=ANS(XN)-13
Else If ANS(XN)<14
CRD=ANS(XN)
End If
End If
End If
End If
Inc XN
If XN=53 Then XN=1
If XN=1 and GS=5 Then Goto PNT
End Proc
'
Procedure HGH_LW
HL=0
If RDN=4 Then Proc BT_GM : SCPCN=1 : Pop Proc
Add X,50
Cls 10,138,157 To 517,170
ZZ=0 : Proc WRTWRD
Do
If Jleft(1) Then HL=1 : Bob 1,H,60,54
If HL=1 and Fire(1) Then ZZ=1 : Proc WRTWRD : Bob Off 1 : Wait 10 : Pop Proc
If Jright(1) Then HL=2 : Bob 1,H+90,60,54
If HL=2 and Fire(1) Then ZZ=2 : Proc WRTWRD : Bob Off 1 : Wait 10 : Pop Proc
Loop
End Proc
'
Procedure BT_GM
PCN=54 : Dec XN : BG=0
ZZ=6 : Proc WRTWRD
Do
If Jleft(1) Then BG=1 : Bob 1,BET,113,55
If BG=1 and Fire(1) Then Bob Off 1 : WIN=0 : Proc WN_LOSE : Pop Proc
If Jright(1) Then BG=2 : Bob 1,BET+60,113,55
If BG=2 and Fire(1) Then Bob Off 1 : Proc NW_GAME : Pop Proc
Loop
End Proc
'
Procedure WN_LOSE
Do
If WIN=100 Then Proc NW_GAME : Pop Proc
Wait 30
J=1
PCK=Rnd(1)+1
If PCK=1
Goto FRST
Else
Goto SCND
End If
'
FRST:
Bob 2,GAM,113,55
Sam Play 1,7,10000
Do
Inc J
If J=SPEED Then J=1 : Goto SCND
If Fire(1) Then Bob Off : Proc NW_GAME : Pop Proc
If Key State(80)=True Then SPEED=2000
Loop
'
SCND:
Bob 2,GAM+60,113,55
Sam Play 1,7,10000
Do
Inc J
If J=SPEED Then J=1 : Goto FRST
If Fire(1) Then Goto THRD
Loop
'
THRD:
WIN=-10
Inc GMBL
If GMBL=1
WIN=10 : SPEED=900
Else If GMBL=2
WIN=20 : SPEED=800
Else If GMBL=3
WIN=40 : SPEED=700
Else If GMBL=4
WIN=80 : SPEED=500
Else If GMBL=5
WIN=100
End If : End If : End If : End If : End If
Add GAM,60
Loop
End Proc
'
Procedure NW_GAME
Inc XN : Wait 20 : Bob Off
If XN=53 Then XN=1
Wait 30
For F=X To 198 Step -50
Paste Bob F,Y,53 : Shoot : Wait 10
Next F
Add SCORE,WIN
Locate 69,8 : Print SCORE;" "
If SCORE=0 or PCN=59 Then Sam Play 1,3,10000 : Wait 45 : Fade 3 : Wait 45 : Proc HGHSCR : SCPCN=1 : Pop Proc
Wait 10
ZZ=5 : Proc WRTWRD : Wait 20
Bob Off : Cls 10,138,157 To 517,170
End Proc
'
Rem ***** The sub routines for the second and fourth parts *****
'
Procedure RGHT_CRD
Add X,50 : Inc NRW
If NRW=4
Add Y,47 : X=200
Else If NRW=9
Add Y,47 : X=200
End If
End If
Wait 10 : CRD2=CRD
Add SCORE,RGHT
Locate 69,8 : Print SCORE
Cls 3,0,0 To 10,90
If NRW=14 Then Proc AGN
End Proc
'
Procedure ZILCH
Sam Play 1,2,6000 : Wait 100
Proc CLEANOUT
Cls 10,450,96 To 635,109
Add SCORE,RGHT
Cls 10,145,52 To 170,65
Paste Icon 150,54,FSTRNTHR
Dec FSTRNTHR : Wait 10
Proc AGN
End Proc
'
Procedure PCK_WHCH
HL=0 : FPI=1
Cls 10,450,96 To 635,109
ZZ=7 : FPI=1 : Proc WRTWRD
TME=0
Repeat
Inc TME
If Jleft(1) Then HL=1 : Bob 1,H,83,54
If HL=1 and Fire(1) Then Bob Off 1 : Pop Proc
If Jright(1) Then HL=2 : Bob 1,H+90,83,54
If HL=2 and Fire(1) Then Bob Off 1 : Pop Proc
Until TME=1500
Bob Off 1 : X=X-50
Proc ZILCH
X=200 : Y=47 : NRW=-1
Cls 10,450,96 To 635,109
Wait 50
End Proc
'
Procedure AGN
If GAMESTATE=2 and FSTRNTHR=52
Fade 3 : Wait 45 : SCPCN=1 : GAMESTATE=3 : Pop Proc
Else If GAMESTATE=4 and FSTRNTHR=52
Fade 3 : Wait 45 : SCPCN=1 : GAMESTATE=1 : Pop Proc
End If : End If
Cls 10,450,96 To 635,109
If NRW=14 Then Wait 30 : X=400 : Proc CLEANOUT
FPI=1 : ZZ=8 : Proc WRTWRD
Do
If Key State(21)=True or Fire(1) Then Pop Proc
If Key State(54)=True Then Fade 3 : Wait 45 : Proc HGHSCR : Pop Proc
Loop
End Proc
'
Rem ***** The other routines for packs, highscores etc *****
'
Procedure NWPCK
Wait 20
Cls 10,138,157 To 517,170
ZZ=10 : Proc WRTWRD
Proc CHSECRD
ZZ=19 : Proc WRTWRD
Wait 30
Fade 3 : Wait 45 : Proc GAMESETUP3
MRSCR=SCORE+200
NPCK=SCORE
Add NPCK,20000
Unpack 8 To 0 : Double Buffer
If GAMESTATE=3 Then Paste Bob 272,15,56
Wait 20
End Proc
'
Procedure HGHSCR
Music 1 : Wait 10
A=1
Repeat
If SCORE>HIGH(A)
Proc HIGHADD
A=99
End If
Inc A
Until A>=7
Unpack 11 To 0
Wait 20
LFT=7
Paper 3 : Pen 1
For A=1 To 6
Locate 23,LFT : Print A
Locate 27,LFT : Print HIGHNAME$(A)
Locate 43,LFT : Print HIGH(A)
Cls 3,0,0 To 10,10
Inc LFT : Inc LFT
Wait 10
Next A
RD=0 : RNTHR=0 : PCN=54
TWLG=0
Do
If Fire(1) Then Music Off : Fade 3 : Wait 45 : MDE=0 : SCPCN=1 : GAMESTATE=1 : Pop Proc
Inc TWLG
If TWLG=25000 Then Fade 3 : Wait 45 : MSC=1 : SCPCN=1 : GAMESTATE=0 : Pop Proc
Loop
End Proc
'
Procedure HIGHADD
Screen Open 1,320,256,2,Lowres
Screen 1
Palette $0,$FFF
Clear Key
Locate 0,1 : Under On : Centre "HIGH SCORES" : Under Off
Locate 3,6
Centre "Enter name (Up to 8 letters)"
Locate 3,8 : Line Input " : ";N$
Curs Off : Wait 20
NAME$=Left$(N$,8)
B=6 : While B>A
HIGH(B)=HIGH(B-1)
HIGHNAME$(B)=HIGHNAME$(B-1)
Dec B : Wend
HIGH(A)=SCORE
HIGHNAME$(A)=NAME$
Screen Close 1 : Screen 0
End Proc
'
Procedure WRTWRD
WP=160 : DWN=158 : CHRT=1
If FPI=0 Then Cls 10,138,157 To 517,170
If FPI=1 Then WP=455 : DWN=96
If FPI=2 Then WP=135 : DWN=179 : Cls 10,130,178 To 508,191
PLC_ICN:
WRD$=WRDS$(ZZ)
Proc NWCHAR : Inc CHRT
If CHRT=Len(WRD$) Then FPI=0 : Pop Proc
Goto PLC_ICN
End Proc
Procedure NWCHAR
E1$=Mid$(WRD$,CHRT,1)
E1=Instr(SCRL$,E1$)
Paste Icon WP,DWN,E1 : Add WP,13
If SP=1 Then Sam Play 1,7,10000
Wait Vbl
End Proc
'
Procedure CLEANOUT
If NRW<4
Proc BLST1
Else If NRW>=4 and NRW<9
Proc BLST2
Else If NRW>8
Proc BLST3
End If : End If : End If
X=200
End Proc
'
Procedure BLST1
For F=X To 200 Step -50
Paste Bob F,Y,53 : Shoot : Wait 10
Next F
End Proc
'
Procedure BLST2
For F=X To 200 Step -50
Paste Bob F,Y,53 : Shoot : Wait 10
Next F
X=400 : Y=47
For F=X To 200 Step -50
Paste Bob F,Y,53 : Shoot : Wait 10
Next F
End Proc
'
Procedure BLST3
For F=X To 200 Step -50
Paste Bob F,Y,53 : Shoot : Wait 10
Next F
X=400 : Y=94
For F=X To 200 Step -50
Paste Bob F,Y,53 : Shoot : Wait 10
Next F
X=400 : Y=47
For F=X To 200 Step -50
Paste Bob F,Y,53 : Shoot : Wait 10
Next F
End Proc
'
Procedure INITHIGHSCORES
A=1
Repeat
HIGHNAME$(A)=Left$("Kinghigh"+Space$(20),20)
HIGH(A)=7000-(A*1000)
Inc A
Until A=7
For F=0 To 19
Read WRDS$(F)
Next F
Data "High or Low ? "
Data "High. "
Data "Low. "
Data "Correct ! "
Data "Wrong ! "
Data "Right - Lets go again !"
Data "Bet winnings OR save ? "
Data "Next.."
Data "Again Y-N ? "
Data "REMEMBER get it WRONG ! "
Data "Hang on - NEW PACK TIME."
Data "You're Play ! "
Data "Twist. "
Data "Stick. "
Data "Bank to Play ! "
Data "The Bank WINS. "
Data "You WIN - Take 1000 Points. "
Data " --- BUST --- !!! "
Data "FIVE CARD TRICK - Great !"
Data "Now play KINGHIGH PONTOON !"
End Proc
'
Procedure CHSECRD
Shared AN,CN,FX
AN=1
MAIN:
CN=0 : FX=Rnd(51)+1
If AN>1 Then Proc CHCK : If CN=1 Then Goto MAIN
ANS(AN)=FX : CN=0 : Inc AN
If AN=53 Then Pop Proc
Goto MAIN
End Proc
Procedure CHCK
Shared AN,CN,FX
For F=1 To AN
If ANS(F)=FX Then CN=1
Next F
End Proc